package com.wise.summer.v1.cms.content.file;

import com.alibaba.fastjson.annotation.JSONField;
import com.wise.framework.annotations.ApiInfo;
import com.wise.framework.annotations.Publish;
import com.wise.framework.annotations.SkipRequestBodyAnnotation;
import com.wise.framework.summer.BasicSummer;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@Publish
@SkipRequestBodyAnnotation
@ApiInfo("文件上传")
public class AddFile extends BasicSummer<Boolean> {

    @ApiInfo("需要覆盖文件")
    Integer overwrite;

    @ApiInfo("当前文件块，从1开始")
    Integer chunkNumber;

    @ApiInfo("分块大小")
    Long chunkSize;

    @ApiInfo("当前分块大小")
    Long currentChunkSize;

    @ApiInfo("总大小")
    Long totalSize;

    @ApiInfo("文件标识Id")
    String identifier;

    @ApiInfo("文件名")
    String filename;

    @ApiInfo("相对路径")
    String relativePath;

    @ApiInfo("总块数")
    Integer totalChunks;

    //    @NotNull(msg = Err_000100140004)
    @ApiInfo("文件类型")
    String type;

    @ApiInfo("资源类型")
    Integer fileType;

    @ApiInfo("图片尺寸")
    String picSize;

    @ApiInfo("视频时长")
    String videoSize;

    @ApiInfo("文件")
    @JSONField(serialize = false)
    Object file;

//    /**
//     * 标签
//     */
//    String label;
//
//    /**
//     * 文件夹
//     */
//    String folder;

    @ApiInfo("csv名字")
    String csvName;

    @ApiInfo("分组ID")
    String groupId;


    public Integer getChunkNumber() {
        return chunkNumber;
    }

    public void setChunkNumber(Integer chunkNumber) {
        this.chunkNumber = chunkNumber;
    }

    public Long getChunkSize() {
        return chunkSize;
    }

    public void setChunkSize(Long chunkSize) {
        this.chunkSize = chunkSize;
    }

    public Long getCurrentChunkSize() {
        return currentChunkSize;
    }

    public void setCurrentChunkSize(Long currentChunkSize) {
        this.currentChunkSize = currentChunkSize;
    }

    public Long getTotalSize() {
        return totalSize;
    }

    public void setTotalSize(Long totalSize) {
        this.totalSize = totalSize;
    }

    public String getIdentifier() {
        return identifier;
    }

    public void setIdentifier(String identifier) {
        this.identifier = identifier;
    }

    public String getFilename() {
        return filename;
    }

    public void setFilename(String filename) {
        this.filename = filename;
    }

    public String getRelativePath() {
        return relativePath;
    }

    public void setRelativePath(String relativePath) {
        this.relativePath = relativePath;
    }

    public Integer getTotalChunks() {
        return totalChunks;
    }

    public void setTotalChunks(Integer totalChunks) {
        this.totalChunks = totalChunks;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public Integer getFileType() {
        return fileType;
    }

    public void setFileType(Integer fileType) {
        this.fileType = fileType;
    }

    public String getPicSize() {
        return picSize;
    }

    public void setPicSize(String picSize) {
        this.picSize = picSize;
    }

    public String getVideoSize() {
        return videoSize;
    }

    public void setVideoSize(String videoSize) {
        this.videoSize = videoSize;
    }

    public Object getFile() {
        return file;
    }

    public void setFile(Object file) {
        this.file = file;
    }

    public String getCsvName() {
        return csvName;
    }

    public void setCsvName(String csvName) {
        this.csvName = csvName;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }
}
